//
//  UILabel+Extend.h
//  CFFinanceProject
//
//  Created by chunfeng on 2018/4/9.
//  Copyright © 2018年 xiaowen. All rights reserved.
//

#import <UIKit/UIKit.h>

@interface UILabel (Extend)



/**
 *  字间距
 */
@property (nonatomic,assign)CGFloat characterSpace;

/**
 *  行间距
 */
@property (nonatomic,assign)CGFloat lineSpace;

/**
 *  关键字
 */
@property (nonatomic,copy)NSString *keywords;
@property (nonatomic,strong)UIFont *keywordsFont;
@property (nonatomic,strong)UIColor *keywordsColor;

/**
 *  下划线
 */
@property (nonatomic,copy)NSString *underlineStr;
@property (nonatomic,strong)UIColor *underlineColor;



/**
 --> 计算label宽高，必须调用（* 这个方法必须使用，此LabelCategory类别中属性才会生效）
 
 @param maxWidth 最大宽度
 @return label的rect
 */
- (CGRect)getLableRectWithMaxWidth:(CGFloat)maxWidth;


/**
 计算label宽
 
 @param maxWidth 最大宽度
 @return label的宽
 */
- (CGFloat)getLabelWidth:(CGFloat)maxWidth;


/**
 计算label高
 
 @param maxWidth 最大宽度
 @return label的高
 */
- (CGFloat)getLabelHeight:(CGFloat)maxWidth;


/**
 根据animationDuration和toColor来改变UILABEL的字体颜色.
 @param animationDuration 动画所需时间.
 @param toColor UILABEL最终的字体颜色.
 **/
- (void)changeTextColorAnimationWithAnimationDuration:(CGFloat)animationDuration ToColor:(UIColor *)toColor;


/**
 文本的内容实际高度(正常情况下，未考虑间距问题下)
 
 @param text 文本内容
 @param width 文本宽度
 @param font 文本字体大小
 @return 文本的内容实际高度
 */
-(CGFloat)getTextHeightByText:(NSString *)text maxWidth:(CGFloat)width font:(UIFont*)font;

/**
 *  改变行间距
 */
+ (void)changeLineSpaceForLabel:(UILabel *)label WithSpace:(float)space;

/**
 *  改变字间距
 */
+ (void)changeWordSpaceForLabel:(UILabel *)label WithSpace:(float)space;

/**
 *  改变行间距和字间距
 */
+ (void)changeSpaceForLabel:(UILabel *)label withLineSpace:(float)lineSpace WordSpace:(float)wordSpace;



@end
